fasthash 0.4.0

A suite of non-cryptographic hash functions for Rust.
Documentation
A suite of non-cryptographic hash functions for Rust. # Example ```rust use std::hash::{Hash, Hasher}; use fasthash::{metro, MetroHasher}; fn hash(t: &T) -> u64 { let mut s: MetroHasher = Default::default(); t.hash(&mut s); s.finish() } let h = metro::hash64(b"hello world\xff"); assert_eq!(h, hash(&"hello world")); ``` By default, `HashMap` uses a hashing algorithm selected to provide resistance against `HashDoS` attacks. The hashing algorithm can be replaced on a per-`HashMap` basis using the `HashMap::with_hasher` or `HashMap::with_capacity_and_hasher` methods. It also cowork with `HashMap` or `HashSet`, act as a hash function ```rust use std::collections::HashSet; use fasthash::spooky::Hash128; let mut set = HashSet::with_hasher(Hash128); set.insert(2); ``` Or use `RandomState` with a random seed. ```rust use std::collections::HashMap; use fasthash::{city, RandomState}; let s = RandomState::::new(); let mut map = HashMap::with_hasher(s); assert_eq!(map.insert(37, "a"), None); assert_eq!(map.is_empty(), false); map.insert(37, "b"); assert_eq!(map.insert(37, "c"), Some("b")); assert_eq!(map[&37], "c"); ```